#version 330 core
layout (location = 0) in vec3 aPos;
layout (location = 1) in vec2 aTexCoord;

out vec2 TexCoord;

uniform mat4 model;
uniform mat4 view;
uniform mat4 projection;

void main()
{
    // model - 局部坐标系转换到世界坐标系
    // view - 世界坐标系转换到相机（观察者）坐标系
    // projection - 相机坐标系转换到剪裁坐标系，最终映射到屏幕坐标系
    gl_Position = projection * view * model * vec4(aPos, 1.0);
    TexCoord = aTexCoord;
}